LGF_Integration (FB / 3.1.0)

Übersicht

Autor: Siemens Digital Industries

Kurzbeschreibung

Die Funktion berechnet näherungsweise die Fläche unter einer Funktionskurve (das Integral). Die Funktionskurve wird als analoger Wert value (LReal) übertragen, der sich mit der Zeit ändert. Der Integralwert wird auf integral ausgegeben.
Die Implementierung basiert auf der Trapezregel und verwendet Sekunden [s] als Zeitbasis, z. B. Geschwindigkeit [m/s].

Baustein Schnittstelle

LGF_Integration (FB)
Bool  enable integral  LReal
    
LReal  value error  Bool
    
Bool  reset status  Word
    
   subfunctionStatus  Word
    
   

Input Parameter

BezeichnerDatentyp Default Wert Beschreibung
enableBool FALSE Aktivierung der Integral Rechnung
Wird dieser Eingang auf den Wert `FALSE` berechnung gestoppt und der Ausgang `integral` zeigt den zuletzt berechneten Wert.
valueLReal 0.0 Analogwert der kontinuierlichen Funktionskurve, basierent auf [s], (z.B. [Volumenstrom/s])
resetBool FALSE Setzt den Ausgang "integral" auf "0.0".

Output Parameter

BezeichnerDatentyp Beschreibung
integralLReal Integral Wert
errorBool FALSE: Kein Fehler
TRUE: Während der Ausführung des FB ist ein Fehler aufgetreten
statusWord 16#0000-16#7FFF: Status des FB
16#8000-16#FFFF: Fehleridentifikation (siehe folgende Tabelle)
subfunctionStatusWord Status oder Rückgabewert von aufgerufenen FB's / FC's und Systemfunktionen

Status & Error Meldungen

Code / WertBezeichner / Beschreibung
16#0000STATUS_EXECUTION_FINISHED_NO_ERROR
Status: Kein Fehler während der Ausführung
16#8600ERR_READ_SYS_TIME
Fehler: Lesen der Systemzeit `RD_SYS_T` endet mit einem Fehler - weitere infos in `subFunctionStatus`

Funktionsbeschreibung

Hinweis
In subFunctionStatus wird der Status von aufgerufenen Anweisungen ausgegeben. Der Ausgangswert in status gibt in diesem Fall an, welche Anweisung den Fehler verursacht hat. Holen Sie sich in diesem Fall die Informationen aus der TIA Portal Online Hilfe zu den jeweiligen Anweisungen.

Die Integralberechnung beinhaltet die Aufsummierung jener Trapezflächen, die sich zwischen den letzten beiden Funktionswerten am Eingang value und der Zeit aufspannen. Die vergangene Zeit wird über die Systemzeit der CPU berechnet. Diese Trapezfläche ist identisch mit dem Produkt aus dem Mittelwert der beiden Prozesswerte und dem Zeitintervall.


HINWEIS
Die Berechnung benutzt [s] als Zeitbasis. Das heisst, das der Analogwert die selbe Zeitbasis besitzen muss, z.B. [Volumenstrom/s].

A = \frac{1}{2} * (F_{t_1}+F_{t_0}) * (t_1-t_0) + \frac{1}{2} * (F_{t_2}+F_{t_1}) * (t_2-t_1) + ...

Abbildung: Funktionsweise

LGF_Integration - Funktionsweise

Start der Integralberechnung für den Eingangswert am Parameter value:

Wird der Parameter enable auf den Wert FALSE gesetzt, wird die Integralberechnung gestoppt und der Ausgang integral gibt den zuletzt berechneten Wert aus.
Wird der Parameter reset auf den Wert TRUE gesetzt, wird der Ausgang integral auf 0.0 zurückgesetzt.

Änderungshistorie

Version & DatumÄnderungsbeschreibung
1.0.0Siemens Industry Online Support
17.02.2017First released version
1.0.1Siemens Industry Online Support
17.08.2018Upgrade: TIA V15 Update 2
1.0.2Siemens Industry Online Support
23.11.2018Upgrade: TIA V15.1
1.1.0Simatic Systems Support
12.11.2019Regions, comments and constants are added, code refactored
3.0.0Simatic Systems Support
23.04.2020Set version to V3.0.0, harmonize the version of the whole library
3.0.1Simatic Systems Support
09.02.2021Insert documentation
3.0.2Simatic Systems Support
07.06.2021Fix bug - incompatibility with S7-1200 and LTIME
3.1.0Simatic Systems Support
11.07.2025Fix bug - Time measurement and calculation for nanoseconds fixed
Fix Wording/Bug - Time measurement scaling [ms] / [s] - timing for calculatiuon is bnased on seconds